from functools import reduce #python3中不再是内置函数
def name(x):
    return str.upper(x[0])+str.lower(x[1:])

def prod(x,y):
    return x*y

def is_odd(n):
    return n % 2 == 1

#map(函数,列表):列表内的元素带入函数，结果生成一个新的列表；
a=['adam', 'LISA', 'barT']
print('map:',list(map(name,a)))
#reduce(两参函数,列表)：列表内元素带入函数累计计算；
l=[2,4,5]
print('reduce:',reduce(prod,l))
#filter(函数,列表)：传入的函数依次作用于列表元素，然后根据true、false决定保留还是舍弃该元素；
b=list(filter(is_odd, [1, 2, 4, 5, 6, 9, 10, 15]))
print('filter:',b)